This section provides background information related to the present disclosure which is not necessarily prior art.
When a local file needs to be uploaded to a cloud storage server, a peer to peer (P2P) technology may be used to increase a speed of uploading the file. A unique identifier HASH of a to-be-uploaded file of a user is associated with a network node that is currently performing P2P. In this way, other P2P nodes that are downloading or have downloaded the file may assist an original upload node in uploading corresponding file fragments according to the HASH of the to-be-uploaded file. When a download client exchanges a data fragment with a P2P network, under unified scheduling of a storage interface server, the download client may further copy the corresponding data fragment for upload, and in this way, a speed of uploading the file may be increased.
In the existing technology, when uploading a file to a cloud storage server, a private client and a server acquire an interface address of the to-be-uploaded file by using an upload logic server and then scan the file locally to perform fragmentation on the file and calculate check information of each fragment. In addition, the private client and the server upload each fragment to a storage interface server in a multi-threaded manner according to the interface address. The check information is used to check during download whether obtained data is correct.
Existing technology has at least the following challenges. When multiple clients upload the same file, data sharing during upload cannot be directly implemented. As a result, each client needs to transmit the file data separately, and upload bandwidth resources are wasted. In particular, when an asymmetric digital subscriber line (ADSL) is generally used to transmit data, the speed of uploading a file is reduced due to limited ADSL upload bandwidth resources.